package com.mgkj.mapper;

import com.mgkj.dto.*;
import com.mgkj.vo.*;
import io.swagger.models.auth.In;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface PickingMapper {

    List<WorkInfoToWmsTempVo> getWorkInfoToWmsVo(String docNo);

    List<WorkInfoToWmsItemVo> getWorkInfoItem(@Param("res") List<WorkInfoToWmsTempVo> res);

    void saveMoPickingSummary(MoPickingSummary moPickingSummary);

    void deleteMoPickingSummary(String createBy);

    List<MoPickingSummary> queryMoSummary(QueryMoSummaryDTO queryMoSummaryDTO);

    Integer queryUnMatchQtyList(String id);

    void updateMoSummaryOfMatchQty(@Param("id") String id, @Param("qty") double qty, @Param("createBy") String createBy,@Param("barcode") String barcode);

    List<InvBarcodeOperationVo> queryInvBarcodeOperationVo(String createBy);

    int updateQtySubtraction(@Param("id") String id, @Param("qty") double qty, @Param("createBy") String createBy);

    int updateQtyZero(@Param("id") String id, @Param("qty") double qty, @Param("createBy") String createBy);

    MoPickingSummary queryMoSummaryOne(QueryMoSummaryDTO queryMoSummaryDTO);

    void deleteInvBarcodeOperationByCreateBy(String createBy);

    int deleteMoPickingSummaryById(String id);

    List<IssueReceiptDVo> queryIssueReceiptReqD(QueryIssueReceiptD dto);

    List<IssueReceiptVo> queryIssueReceiptHeader(String docNo);

    void updateIssueReceiptD(@Param("issueReceiptId") String issueReceiptId,@Param("qty") Double qty);

    IssueReceiptDVo queryIssueReceiptD(String id);

    Integer queryUnSignCount(QueryIssueReceiptD dto);

    List<MoReceiptVo> queryMoReceipt(QueryMoReceiptD dto);

    MoReceiptVo queryMoReceiptD(String id);

    void updateMoReceiptD(@Param("id") String id, @Param("qty") double qty);
}
